package cc.rengu.igas.bomp.facade;

import cc.rengu.igas.bomp.facade.request.UserInfoManageRequest;
import cc.rengu.igas.bomp.facade.request.UserInfoQueryRequest;
import cc.rengu.igas.bomp.facade.request.UserLimitManageRequest;
import cc.rengu.igas.bomp.facade.request.UserTxnLimitCfgQueryRequest;
import cc.rengu.igas.bomp.facade.response.UserInfoManageResponse;
import cc.rengu.igas.bomp.facade.response.UserInfoQueryResponse;
import cc.rengu.igas.bomp.facade.response.UserLimitManageResponse;
import cc.rengu.igas.bomp.facade.response.UserTxnLimitCfgQueryResponse;
import cc.rengu.igas.bomp.facade.result.Result;

/**
 * @author: zhangxuran
 * @Date: 2020/4/23 17:58
 * ription: Bomp查询类交易
 */

public interface BompUserManageService {
    /**
     * 用户信息查询
     *
     * @param request 请求
     * @return 用户信息
     */
    Result<UserInfoQueryResponse> userInfoQuery(UserInfoQueryRequest request);

    /**
     * 用户信息管理（新增、修改、删除）
     *
     * @param request 请求
     * @return 用户信息管理操作结果
     */
    Result<UserInfoManageResponse> userInfoManage(UserInfoManageRequest request);

    /**
     * 用户限额配置查询
     *
     * @param request 请求
     * @return 用户限额配置信息
     */
    Result<UserTxnLimitCfgQueryResponse> userTxnLimitCfgQuery(UserTxnLimitCfgQueryRequest request);

    /**
     * 用户限额管理（新增、修改、删除）
     *
     * @param request 靖求
     * @return 用户限额管理操作结果
     */
    Result<UserLimitManageResponse> userLimitManage(UserLimitManageRequest request);
}
